// Generated from antlr/gdx.g4 by ANTLR 4.9.0-SNAPSHOT


import { ParseTreeListener } from "antlr4ts/tree/ParseTreeListener";

import { FileContext } from "./gdxParser";
import { NodeContext } from "./gdxParser";
import { OpenBlockContext } from "./gdxParser";
import { BlockContext } from "./gdxParser";
import { EndBlockContext } from "./gdxParser";
import { AttrContext } from "./gdxParser";
import { InstanceContext } from "./gdxParser";
import { DictionaryContext } from "./gdxParser";
import { PairContext } from "./gdxParser";
import { ArrayContext } from "./gdxParser";
import { ValueContext } from "./gdxParser";


/**
 * This interface defines a complete listener for a parse tree produced by
 * `gdxParser`.
 */
export interface gdxListener extends ParseTreeListener {
	/**
	 * Enter a parse tree produced by `gdxParser.file`.
	 * @param ctx the parse tree
	 */
	enterFile?: (ctx: FileContext) => void;
	/**
	 * Exit a parse tree produced by `gdxParser.file`.
	 * @param ctx the parse tree
	 */
	exitFile?: (ctx: FileContext) => void;

	/**
	 * Enter a parse tree produced by `gdxParser.node`.
	 * @param ctx the parse tree
	 */
	enterNode?: (ctx: NodeContext) => void;
	/**
	 * Exit a parse tree produced by `gdxParser.node`.
	 * @param ctx the parse tree
	 */
	exitNode?: (ctx: NodeContext) => void;

	/**
	 * Enter a parse tree produced by `gdxParser.openBlock`.
	 * @param ctx the parse tree
	 */
	enterOpenBlock?: (ctx: OpenBlockContext) => void;
	/**
	 * Exit a parse tree produced by `gdxParser.openBlock`.
	 * @param ctx the parse tree
	 */
	exitOpenBlock?: (ctx: OpenBlockContext) => void;

	/**
	 * Enter a parse tree produced by `gdxParser.block`.
	 * @param ctx the parse tree
	 */
	enterBlock?: (ctx: BlockContext) => void;
	/**
	 * Exit a parse tree produced by `gdxParser.block`.
	 * @param ctx the parse tree
	 */
	exitBlock?: (ctx: BlockContext) => void;

	/**
	 * Enter a parse tree produced by `gdxParser.endBlock`.
	 * @param ctx the parse tree
	 */
	enterEndBlock?: (ctx: EndBlockContext) => void;
	/**
	 * Exit a parse tree produced by `gdxParser.endBlock`.
	 * @param ctx the parse tree
	 */
	exitEndBlock?: (ctx: EndBlockContext) => void;

	/**
	 * Enter a parse tree produced by `gdxParser.attr`.
	 * @param ctx the parse tree
	 */
	enterAttr?: (ctx: AttrContext) => void;
	/**
	 * Exit a parse tree produced by `gdxParser.attr`.
	 * @param ctx the parse tree
	 */
	exitAttr?: (ctx: AttrContext) => void;

	/**
	 * Enter a parse tree produced by `gdxParser.instance`.
	 * @param ctx the parse tree
	 */
	enterInstance?: (ctx: InstanceContext) => void;
	/**
	 * Exit a parse tree produced by `gdxParser.instance`.
	 * @param ctx the parse tree
	 */
	exitInstance?: (ctx: InstanceContext) => void;

	/**
	 * Enter a parse tree produced by `gdxParser.dictionary`.
	 * @param ctx the parse tree
	 */
	enterDictionary?: (ctx: DictionaryContext) => void;
	/**
	 * Exit a parse tree produced by `gdxParser.dictionary`.
	 * @param ctx the parse tree
	 */
	exitDictionary?: (ctx: DictionaryContext) => void;

	/**
	 * Enter a parse tree produced by `gdxParser.pair`.
	 * @param ctx the parse tree
	 */
	enterPair?: (ctx: PairContext) => void;
	/**
	 * Exit a parse tree produced by `gdxParser.pair`.
	 * @param ctx the parse tree
	 */
	exitPair?: (ctx: PairContext) => void;

	/**
	 * Enter a parse tree produced by `gdxParser.array`.
	 * @param ctx the parse tree
	 */
	enterArray?: (ctx: ArrayContext) => void;
	/**
	 * Exit a parse tree produced by `gdxParser.array`.
	 * @param ctx the parse tree
	 */
	exitArray?: (ctx: ArrayContext) => void;

	/**
	 * Enter a parse tree produced by `gdxParser.value`.
	 * @param ctx the parse tree
	 */
	enterValue?: (ctx: ValueContext) => void;
	/**
	 * Exit a parse tree produced by `gdxParser.value`.
	 * @param ctx the parse tree
	 */
	exitValue?: (ctx: ValueContext) => void;
}

